package net.htjs.juc.timer;

import lombok.extern.slf4j.Slf4j;

import java.util.Timer;
import java.util.TimerTask;

@Slf4j
public class TimerDemo {
    public static void main(String[] args) {
        Timer timer = new Timer();

        // 单次任务：2秒后执行
        timer.schedule(new TimerTask() {
            @Override
            public void run() {
                log.info("单次任务执行: " + System.currentTimeMillis());
            }
        }, 2000);

        // 周期性任务：3秒后开始，每隔1秒执行一次
        timer.schedule(new TimerTask() {
            @Override
            public void run() {
                log.info("周期性任务执行: " + System.currentTimeMillis());
            }
        }, 3000, 1000);

        // 10秒后终止定时器
        timer.schedule(new TimerTask() {
            @Override
            public void run() {
                timer.cancel();
                log.info("定时器已终止");
            }
        }, 10000);
    }

}
